// I2C Digital Potentiometer
// by Nicholas Zambetti <http://www.zambetti.com>
// and Shawn Bonkowski <http://people.interaction-ivrea.it/s.bonkowski/>

// Demonstrates use of the Wire library
// Controls AD5171 digital potentiometer via I2C/TWI

// Created 31 March 2006

// This example code is in the public domain.

// This example code is in the public domain.

#include <Wire.h>

void setup()
{
    Wire.begin(); // join i2c bus (address optional for master)
}

byte val = 0;

void loop()
{
    Wire.beginTransmission(44); // transmit to device #44 (0x2c)
                                // device address is specified in datasheet
    Wire.write(byte(0x00));     // sends instruction byte
    Wire.write(val);            // sends potentiometer value byte
    Wire.endTransmission();     // stop transmitting

    val++;         // increment value
    if (val == 64) // if reached 64th position (max)
    {
        val = 0; // start over from lowest value
    }
    delay(500);
}
